package org.jeecg.modules.pipe.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @Description: 水厂
 * @Author: jeecg-boot
 * @Date:   2024-05-14
 * @Version: V1.0
 */
@Data
@TableName("iot_pipe_water_plant")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="iot_pipe_water_plant对象", description="水厂")
public class WaterPlant implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**名称*/
	@Excel(name = "名称", width = 15)
    @ApiModelProperty(value = "名称")
    private java.lang.String name;
	/**流域*/
	@Excel(name = "流域", width = 15)
    @ApiModelProperty(value = "流域")
    private java.lang.String basin;
	/**城镇类别*/
	@Excel(name = "城镇类别", width = 15, dicCode = "town_category")
	@Dict(dicCode = "town_category")
    @ApiModelProperty(value = "城镇类别")
    private java.lang.String townCategory;
    /**水厂类型*/
	@Excel(name = "水厂类型", width = 15, dicCode = "plant_category")
	@Dict(dicCode = "plant_category")
    @ApiModelProperty(value = "水厂类型")
    private java.lang.String plantCategory;
	/**处理级别*/
	@Excel(name = "处理级别", width = 15, dicCode = "processing_level")
	@Dict(dicCode = "processing_level")
    @ApiModelProperty(value = "处理级别")
    private java.lang.String processingLevel;
	/**受纳水体*/
	@Excel(name = "受纳水体", width = 15)
    @ApiModelProperty(value = "受纳水体")
    private java.lang.String receivingWater;
	/**行政区*/
	@Excel(name = "行政区", width = 15)
    @ApiModelProperty(value = "行政区")
    private java.lang.String region;
	/**详细地址*/
	@Excel(name = "详细地址", width = 15)
    @ApiModelProperty(value = "详细地址")
    private java.lang.String detailedAddress;
	/**经度*/
	@Excel(name = "经度", width = 15)
    @ApiModelProperty(value = "经度")
    private java.lang.String longitude;
	/**纬度*/
	@Excel(name = "纬度", width = 15)
    @ApiModelProperty(value = "纬度")
    private java.lang.String latitude;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String mark;
	/**类型图标*/
	@Excel(name = "类型图标", width = 15)
    @ApiModelProperty(value = "类型图标")
    private java.lang.String pic;

    //状态
    private java.lang.Integer status;

    //gis显示状态
    private java.lang.Integer gisShow;

	/**是否删除*/
	@Excel(name = "是否删除", width = 15)
    @ApiModelProperty(value = "是否删除")
    @TableLogic
    private java.lang.Integer delFlag;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**修改时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;
	/**修改人*/
    @ApiModelProperty(value = "修改人")
    private java.lang.String updateBy;
	/**租户*/
	@Excel(name = "租户", width = 15)
    @ApiModelProperty(value = "租户")
    private java.lang.String tenantId;
}
